# @Filename:    函数是对象
# @Author:      王佳伟
# @Time:        2025-02-07 11:36
# @Describe:

a = max
print(a(5, 10))

'''
python一切皆是对象
函数当然也是
a = max()  ; a(x,y) # 报错
a = max  ; a(x,y)	# 成功运行
函数加括号是调用，如果没有那它只是对象甚至可以这样
'''

print('-----------------------------------------------')

'''
从函数中返回函数
其实并不需要在一个函数里去执行另一个函数，我们也可以将其作为输出返回出来：
'''

def one_def(num=1):
    def two_def(two):
        return "now you are in the function two_def(){}".format(two)

    def three_def(three):
        return "now you are in the function three_def(){}".format(three)

    if num == 2:
        return two_def
    else:
        return three_def


print(one_def(2)("hello"))
print(one_def(3)("Hi"))

print('-----------------------------------------------')

def RUN(func):
    print("OK")
    print(func())

def Hello():
    return "Hello"

RUN(Hello)

print('-----------------------------------------------')



